Модуль Синхронизации

Инструкция по дополнительной настройке модуля синхронизации

Для предотвращения конфликтов при миграции и синхронизации данных из Microsoft Active Directory (MS AD) используется синхронная модель поведения. В качестве ведущего сервера обработки информации выбран главный сервер в кластере серверов ALD Pro.

Модуль синхронизации работает по следующим принципам:

  • Источник данных LDAP: используется только MS AD DS (Microsoft Active Directory Domain Services). Все изменения объектов выполняются исключительно в MS AD;

  • Направление: односторонняя синхронизация (MS AD → ALD Pro);

  • Контроль изменений: - объекты, управляемые модулем синхронизации, не редактируются напрямую в ALD Pro; - все изменения (создание, модификация, удаление) производятся только в MS AD.

Исходные настройки

Предполагается, что на момент настройки модуля синхронизации у нас имеются:

  • Настроенный контроллер домена MS AD;

  • Настроенный контроллер домена ALD Pro;

  • В обоих доменах MS AD и ALD Pro настроены корзины с одинаковыми интервалами ротации(очистки);

  • Для сетей, в которых находятся контроллеры домена Microsoft AD и ALD Pro, настроено перенаправление DNS-зон;

  • В домене MS AD поднят центр сертификации и выдан сертификат для доступа по LDAPs (см. Выгрузка сертификатов для контроллера домена MS AD);

  • Для учетной записи MS AD, под которой идет подключение модуля синхронизации к контроллерам домена MS AD, необходимо через powershell выдать права на контейнер “Deleted Objects” и организационное подразделение (OU), задействованное для процесса синхронизации.

Примечание

В примере ниже при помощи команд powershell выдаются права на контейнер Deleted Objects и организационное подразделение (OU) Подразделение А для пользователя aldagent в домене winad.lan

// для выдачи прав на контейнер запускаем ``powershell`` от имени администратора
dsacls "CN=Deleted Objects,DC=winad,DC=lan" /takeownership
dsacls "CN=Deleted Objects,DC=winad,DC=lan" /g winad\aldagent:LCRP
dsacls "OU=Подразделение А,DC=winad,DC=lan" /g "winad\aldagent:CA;Reset Password;user" /I:S

Выгрузка сертификатов для контроллера домена MS AD

Для выгрузки сертификатов необходимо, чтобы в домене был настроен Центр Сертификации.

Примечание

Для корректного отображения окна конфигуратора используйте разрешение экрана не ниже 1280×1024, иначе элементы интерфейса могут выходить за пределы экрана.

Запустить Центр Сертификации → Шаблоны Сертификатов → Управление на сервере с ролью Центр Сертификации:

../../_images/1.png

Создать копию шаблона Проверка подлинности Kerberos, выбрав пункт Скопировать шаблон контекстного меню:

../../_images/21.png

Настроить шаблон сертификата на вкладке Общие:

  • имя сертификата LDAPowerSSL;

  • период действия сертификата.

../../_images/31.png

Отметить галочкой пункт меню Опубликовать сертификат в MS AD.

Опубликовать новый тип сертификата. Для этого в в контекстном меню раздела Шаблоны сертификатов выбрать Создать → Выдаваемый шаблон сертификата.

../../_images/51.png

В списке доступных шаблонов выбрать созданный ранее:

../../_images/61.png

На контроллере домена, который будет задействован в процессе синхронизации данных со стороны MS AD, открыть оснастку Управление сертификатами компьютера. В дереве сертификатов перейти в папку Личное и в контекстном меню выбрать Все задачи → Запросить новый сертификат:

../../_images/71.png

В списке доступных сертификатов выбрать созданный ранее, выпустить сертификат (кнопка Выпустить сертификат) и экспортировать (контекстное меню Все задачи → Экспорт).

../../_images/81.png

Откроется мастер экспорта сертификатов:

../../_images/91.png
../../_images/101.png

Выбрать кодировку base64 для файла сертификата:

../../_images/11.png

Задать имя файла:

../../_images/12.png

После нажатия кнопки Готово будет выгружен файл сертификата <имя_сертификата.cer>.

../../_images/13.png

Необходимо изменить формат файла сертификата на *.pem, переименовав файл в <имя_сертификата.pem>. (например sert.pem - как публичный ключ для подключения по LDAPS к контроллеру MS AD)

Выгрузка сертификатов для контроллера домена ALD Pro

Для выгрузки сертификата необходимо зайти на портал управления ALD Pro, нажать на кнопку просмотра информации о сайте и выбрать Незащищенное соединение → Подробнее:

../../_images/14.png

Выбрать Просмотреть сертификат:

../../_images/15.png

Откроется файл сертификата:

../../_images/16.png

Открыть ссылку PEM (сертификат):

../../_images/17.png

Сертификат сайта сохранен.

Настройка синхронизации паролей MS AD → ALD

Установка passwdhk на контроллер домена (если ранее не устанавливался)

Для настройки потребуется файл PasswdhkSetup.msi, который можно скачать в личном кабинете пользователя Astra Linux https://lk-new.astralinux.ru.

Синхронизация пароля пользователя будет успешна только для тех учетных записей MS AD, для которых пароль задавался после создания групповой политики passwdhk. Пароли, изменяемые до установки passwdhk, не смогут быть синхронизированы в целевой LDAP (ALD Pro). Для синхронизации паролей у существующих пользователей необходимо сменить/обновить пароль в LDAP-источнике (MS AD DS).

Перед началом установки необходимо установить компонент Visual C++ Redistributable 2022.

  1. Выполнить запуск установочного файла passwdhk_install/util/VC_redist.x64.exe

Установку необходимо выполнить на каждом контроллере домена, где планируется установка утилиты passwdhk.

  1. Запустить файл PasswdhkSetup.msi от имени администратора.

  2. На экране параметров установки указать следующие значения:

  • Уровень логирования - указать один из четырех уровней логирования;

  • Номер ключа регистрации - ввести значение, полученное на портале управления ALD Pro;

  • Публичный ключ регистрации - вставить файл открытого ключа, скачанный при развертывании модуля синхронизации в ALD Pro Модуль синхронизации -> Настройки -> Синхронизация паролей -> Кнопка “Получить ключ” (подробнее в разделе Синхронизация паролей ALD Pro → MS AD).

Примечание

Если ключ подгрузился автоматически, это означает, что на контроллере домена имеются артефакты. В этом случае необходимо выполнить шаги из раздела Настройка синхронизации паролей MS AD → ALD для удаления артефактов старой версии. Это позволит избежать некорректной работы утилиты и ошибок установки или нарушения работы компонентов.

../../_images/18.png
  1. После заполнения всех параметров нажать на кнопку Установить, затем — Готово.

  2. Дождаться завершения перезагрузки контроллера домена.

  3. Проверить, что в реестре создались необходимые записи.

../../_images/19.png
../../_images/20.png

Обновление passwdhk, установленного через групповую политику (GPO), на версию MSI

Важно

Утилита может сработать некорректно, если в системе присутствуют артефакты предыдущих установок. В редких случаях это может привести к ошибкам установки или нарушению работы компонентов.

Если на контроллере домена ранее был установлен passwdhk через групповую политику (GPO), необходимо выполнить удаление старой версии перед установкой новой версии через MSI:

  1. Удалить объект групповой политики passwdhk в редакторе групповых политик (gpmc.msc).

../../_images/211.png
  1. Удалить папку passwdhk из сетевого каталога \\<Имя-контроллера-домена>\SYSVOL\<Имя-домена>\scripts.

../../_images/22.png
  1. Очистить параметры в реестре:

  • Удалить ключ Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\passwdhk.

../../_images/23.png
  • В параметре Notification Packages по пути Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa удалите значение passwdhk.

../../_images/24.png
  1. Перезагрузить контроллер домена для применения изменений.

  2. После перезагрузки вручную удалить из каталога C:\Windows\System32 файлы passwdhk.dll и libcrypto-3-x64.dll.

../../_images/25.png
../../_images/26.png
  1. Выполнить установку новой версии passwdhk через PasswdhkSetup.msi, следуя инструкции из пункта инструкции Исходные настройки для модуля синхронизации.

Автоматизированная установка passwdhk через MST-файл

Для массовой установки утилиты passwdhk на контроллеры домена можно использовать файл трансформации (MST), содержащий заранее заданные параметры конфигурации, который можно развернуть с помощью групповой политики (GPO).

Примечание

Для редактирования установочного файла .msi и создания .mst трансформации можно использовать любую утилиту, поддерживающую редактирование таблиц MSI-файлов (например, Orca или аналогичные средства). В данной инструкции приведены примеры с использованием Orca.

Создание MST-файла

  1. Открыть PasswdhkSetup.msi в утилите редактирования MSI-файлов и создать новый трансформационный файл (MST).

  2. В меню File → Open выбрать установочный файл PasswdhkSetup.msi.

  3. В меню Transform выбрать New Transform.

../../_images/27.png
  1. Перейти на вкладку Property и добавить следующие свойства:

  • REGKEY — вставьте публичный ключ регистрации, полученный на портале управления ALD Pro. Каждую строку ключа необходимо экранировать символом n (перевод строки).

  • KVNOPUB — номер ключа, также полученный на портале.

../../_images/28.png
../../_images/29.png
../../_images/30.png
  1. После добавления параметров выбрать TransformGenerate Transform и сохранить полученный файл под именем, например, pass.mst.

../../_images/311.png

Подготовка файлов для установки

  1. Перейти в сетевую папку: \\<Имя-контроллера-домена>\SYSVOL\<Имя-домена>\scripts

  2. Скопировать в нее следующие файлы:

  • PasswdhkSetup.msi;

  • pass.mst.

../../_images/32.png

Настройка групповой политики

  1. Открыть редактор групповой политики (gpmc.msc).

  2. В узле Domain Controllers создать новую групповую политику или использовать существующую.

  3. Перейти в раздел: Конфигурация пользователяПолитикиКонфигурация программУстановка программ.

  4. Создать новый пакет:

  • Указать путь к PasswdhkSetup.msi из сетевой папки;

  • в способе развертывания выбрать Особый.

../../_images/33.png
  1. Добавить MST-файл pass.mst по тому же сетевому пути.

../../_images/34.png

Применение политики

  1. Применить политику командой: gpupdate /force

  2. Перезагрузить контроллер домена.

Синхронизация паролей ALD Pro → MS AD

Получение открытого ключа

В интерфейсе ALD Pro открыть Модуль синхронизации → Конфигурации → Синхронизация паролей

../../_images/35.png

По нажатию кнопки Получить ключ скачивается файл открытого ключа и актуализируется порядковый номер ключа.

Синхронизация паролей

Скачанный файл открытого ключа необходимо сохранить в любую директорию, например, /tmp/. Следующим шагом файл открытого ключа необходимо скопировать в расположение /opt/rbta/aldpro/syncer/:

sudo cp /tmp/public.gpg  /opt/rbta/aldpro/syncer/public.gpg

Перезагружаем контроллер домена:

sudo aldproctl restart

Примечание

  • При изменении пароля синхронизированного пользователя через интерфейс FreeIpa, синхронизация пароля от ALD Pro к MS AD не произойдет. Для изменения пароля с последующей успешной синхронизацией необходимо использовать интерфейс ПК «ALD Pro»;

  • Процесс изменения пароля пользователя через личный кабинет с последующей синхронизацией от ALD Pro к MS AD проходит успешно только при использовании личного кабинета контроллера домена, на котором был развернут модуль синхронизации;

  • При сбросе пароля пользователя через интерфейс ПК «ALD Pro» временный пароль не синхронизируется. После сброса пароля пользователя необходимо залогиниться в домене, изменить пароль с временного на постоянный. При данных условиях произойдет синхронизация пароля от ALD Pro к MS AD.

Пароли пользователей MS AD, установленные до настройки модуля синхронизации, синхронизированы не будут.

Синхронизация паролей пользователей после настройки модуля синхронизации и сопоставлений подразделений происходит по логике:

  • синхронизирован пользователь в домен ALD Pro → изменен пароль пользователя в домене MS AD → синхронизирован пароль пользователя в домен ALD Pro;

  • создан пользователь в домене MS AD → синхронизирован пользователь в домен ALD Pro.

Внимание

При настройке синхронизации паролей между ALD Pro и MS AD рекомендуется вручную задать согласованные значения параметров политики паролей в обеих системах, так как их автоматическая синхронизация не предусмотрена.

Включение TLS на Windows Server 2008R2

Важно

Настройка выполняется, если на контроллере домена отключено TLS. Данная инструкция применима к контроллерам домена с ОС WS 2008R2. Если версия ОС отличается, необходимо обратиться к официальной документации Microsoft для выбора подходящей инструкции.

Алгоритм включения TLS

  1. Для включения TLS необходимо обновить реестр на сервере контроллера домена.

    • Необходимо открыть реестр: выполнить “regedit” в окне запуска.

../../_images/36.png
../../_images/37.png
../../_images/38.png

Откроется окно редактора реестра:

../../_images/39.png
  • Необходимо перейти к расположению и добавить разделы TLS 1.1 и TLS.

  • В разделе Protocol:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocol

../../_images/40.png
../../_images/41.png

Создаются еще два раздела Client и Server под обоими ключами TLS.

../../_images/42.png
  • Теперь необходимо создать значения DWORD в разделе Server и Client со следующими значениями:

DisabledByDefault [Значение = 0]
Enabled [Значение = 1]
../../_images/43.png
../../_images/44.png
  1. Необходимо отключить старые версии TLS и SSL. Для этого:

    1. Открыть реестр на сервере контроллера домена: выполнить “regedit” в окне запуска (аналогично шагу 1).

    2. Перейти к расположению:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols

  1. Изменить значения DWORD в разделе Server и Client в разделе ключи TLS 1.0, SSL 3.0 и более старых версий SSL.

DisabledByDefault [Значение = 0]
Enabled [Значение = 0]
  1. После выполнения всех вышеперечисленных настроек необходимо перезагрузить сервер контроллера домена. Данная настройка выполняется на всех контроллерах домена.

Особенности настройки при миграции большого количества объектов

По умолчанию 389ds выполняет обновления ссылочной целостности сразу после операции удаления или переименования. В зависимости от количества операций это может повлиять на производительность. Чтобы уменьшить влияние на производительность, есть возможность увеличить время между обновлениями, для этого необходимо задать интервал обновления в секундах. По умолчанию интервал обновления равен 0.

Чтобы показать имя 389ds-сервера:

sudo dsctl -l

Скопируйте в буфер имя вашего сервера (рядом с ним вы увидите slapd-GLOBAL-CATALOG). Чтобы отобразить текущий интервал обновления, запустите (заменив <имя LDAP-сервера> на имя нужного вам LDAP-сервера):

sudo dsconf <имя LDAP-сервера> plugin referential-integrity show | grep referint-update-delay

Задать новое значение интервала обновления:

sudo dsconf <имя LDAP-сервера> plugin referential-integrity set --update-delay <новое_значение>

Перезапустите инстанс:

sudo dsctl <имя LDAP-сервера> restart

Логирование событий и отладка (работы модуля синхронизации) с MS AD

Логирование событий и отладка

Данный раздел посвящён диагностике и устранению ошибок, возникающих при синхронизации между ALD Pro и Microsoft Active Directory (MS AD). Приведены типовые сценарии возникновения проблем, способы их диагностики, а также рекомендации по их устранению.

События, возникающие в процессе синхронизации, фиксируются в соответствующих журналах событий. Выполнение диагностики целесообразно начинать с анализа этих журналов.

Общие категории ошибок:

  • Ошибки при установке и первоначальной настройке;

  • Ошибки, возникающие при отсутствии связности между ALD Pro и MS AD;

  • Ошибки при сопоставлении структур (например, дочерних подразделений) между ALD Pro и MS AD.

Ошибки могут проявляться при взаимодействии компонентов, выполняющих синхронизацию данных:

  • компонент passwdhk;

  • служба syncer-watcher;

  • служба syncer-loadrunner;

  • cлужба pwdSync.

Под данными службами подразумевается следующее: - Служба syncer-watcher выполняет синхронизацию данных из LDAP контроллера MS AD в базу PostgreSQL на контроллера ALD Pro; - Служба syncer-loadrunner выполняет синхронизацию из базы PostgreSQL в LDAP на контроллере ALD Pro; - Служба pwdSync выполняет синхронизацию паролей пользователей в MS AD и ALD Pro.

Отладка работы модуля синхронизации

Диагностика интеграции с MS AD

Диагностическая информация модуля интеграции с MS AD фиксируется в журналах событий LSA (Login Security Authority). В этих журналах отражаются:

  • Успешная смена пароля

../../_images/45.png
../../_images/46.png
  • Неуспешная смена пароля

../../_images/47.png
../../_images/48.png

Внимание

Типичная ошибка: После вставки публичного ключа LDAP может возникнуть ошибка вида ``id2 not found``. Решение: Проверить директорию, в которую скопирован ключ. Убедиться, что путь указан верно, и повторно задать ключ в web-интерфейсе ALD Pro, если он не найден.

Примечание

  • При сопоставлении подразделений необходимо убедиться, что логин указывается в виде user@domain, иначе возможны ошибки авторизации;

  • В случае потери ключа авторизации (например, ``id2 not found``), необходимо проверить директорию хранения ключей и выполнить переустановку через интерфейс управления.

Отладка работы модуля syncer

Для отладки работы модуля синхронизации необходимо включить режим отладки (debug):

root@syncer-dc1:~# nano /opt/rbta/aldpro/syncer/.env
DEBUG=True

Логи:

  • syncer_loadrunner.log — отвечает за синхронизацию из PostgreSQL в ALD Pro:

    /var/log/aldpro/syncer/syncer_loadrunner.log
    
  • syncer_watcher.log — отвечает за чтение данных из MS AD и запись в PostgreSQL:

    /var/log/aldpro/syncer/syncer_watcher.log
    

Отладка работы модуля pwdSync

Модуль синхронизации паролей между MS AD и ALD Pro поддерживает включение режима отладки через файл:

root@syncer-dc1:~# nano /opt/rbta/aldpro/syncer/pwd_sync/standalone/__init__.py
DEBUG = True

Журналы:

  • Журнал отладки:

    /var/log/aldpro/syncer/pwd_sync/standalone_debug.log
    
  • Журнал ошибок:

    /var/log/aldpro/syncer/pwd_sync/standalone_error.log
    

Важно

Текущая реализация не требует ручного перезапуска служб — запуск синхронизации осуществляется по расписанию systemd (таймеры, относящиеся к службам syncer-watcher, syncer-loadrunner, pwdSync).

Сценарии отладки

Ниже представлены типовые сценарии поиска и устранения ошибок.

Проверка состояния служб

Следует проверить, что таймеры служб активны, а службы запущены:

systemctl status syncer-watcher.timer
systemctl status syncer-loadrunner.timer
systemctl status syncer-pwdsync.timer

systemctl status syncer-watcher.service
systemctl status syncer-loadrunner.service
systemctl status syncer-pwdsync.service

При наличии ошибок рекомендуется проверить журнал службы:

journalctl -u syncer-watcher.service
journalctl -u syncer-loadrunner.service
journalctl -u syncer-pwdsync.service

Ошибка дублирования имени при создании объекта

Если имя пользователя или группы совпадает в ALD Pro и MS AD, процесс syncer-loadrunner завершится с ошибкой:

CRITICAL     ipa_load_runner   Объект objectGUID=2f880038-bba4-4f05-b115-8b3a8da217b5 не может быть создан в ALD Pro из-за дублирования имени.
ERROR        ipa_load_runner   Объект не может быть создан в ALD Pro из-за дублирования имени.
Решение:
  • Переименовать объект в одном из источников;

  • Удалить объект из ALD Pro.

Важно

Перед началом синхронизации важно убедиться, что в настроенной точке синхронизации (подразделении) в MS AD и ALD Pro отсутствуют записи пользователей, групп, полностью идентичных друг другу (с одинаковыми именами). Если такие записи существуют, то в процессе синхронизации это приведет к ошибке и невозможности синхронизации.

Повторное появление удалённого объекта

Если пользователь/группа была удалена из ALD Pro и корзины, но осталась в MS AD, она может быть вновь синхронизирована.

Примеры логов:

ERROR     ipa_load_runner   Объект objectGUID=... не найден в ALD Pro
INFO      ipa_load_runner   Сохранение объекта objectGUID=..., sync_status=3
CRITICAL  ipa_load_runner   Ошибка при обработке объекта. Требуется устранить ошибку вручную

Решение:

  • Удалить объект в MS AD или исключить его из области синхронизации;

  • Дождаться появления в корзине ALD Pro и удалить повторно.

Отладка проблемы: объект не создаётся в ALD Pro

Пошаговая диагностика:

  1. Определить значение атрибута objectGUID объекта в LDAP MS AD;

  2. Найти строки с ключевыми словами Error и нужным objectGUID в syncer_watcher.log.

grep '2f880038-bba4-4f05-b115-8b3a8da217b5' /var/log/aldpro/syncer/syncer_watcher.log
  1. Найти строки с ключевыми словами Error и нужным objectGUID в syncer_loadrunner.log.

grep '2f880038-bba4-4f05-b115-8b3a8da217b5' /var/log/aldpro/syncer/syncer_loadrunner.log

Примечание

Если при создании точки синхронизации MS AD → ALD Pro задано одно сопоставление, второе сопоставление в той же точке будет невозможно. Такое поведение также фиксируется в логах и требует пересмотра структуры.

Неизвестный класс объекта в логах syncer-watcher

В процессе поиска объектов для синхронизации в журнале `syncer-watcher.log` могут встречаться ошибки следующего вида:

2025-06-25 07:12:03 syncer INFO     runners   Число объектов для обработки в watcher: 3
2025-06-25 07:12:03 syncer INFO     runners   Обработка объектов
2025-06-25 07:12:03 syncer ERROR    runners   Неизвестный класс объекта
2025-06-25 07:12:03 syncer ERROR    runners   Неизвестный класс объекта
2025-06-25 07:12:03 syncer ERROR    runners   Неизвестный класс объекта

Примечание

Данная ошибка не является критичной и не влияет на дальнейшую работу службы `syncer-watcher`.

В процессе выполнения запроса к каталогу LDAP MS AD в результат поиска могут попасть служебные объекты, которые не подлежат синхронизации. Например:

# search reference
ref: ldap://ForestDnsZones.corp.test/DC=ForestDnsZones,DC=corp,DC=test

# search reference
ref: ldap://DomainDnsZones.corp.test/DC=DomainDnsZones,DC=corp,DC=test

# search reference
ref: ldap://corp.test/CN=Configuration,DC=corp,DC=test

Подобные объекты игнорируются при синхронизации и не влияют на корректность основного процесса.

Ошибка удаления объекта, отсутствующего в ALD Pro

Если объект был удалён из точки синхронизации (подразделения в MS AD) или перемещён в другое подразделение, но при этом его уже нет в ALD Pro, возможно появление ошибки при попытке удаления:

2025-06-25 11:26:41 syncer DEBUG     ipa_load_runner   Обработка объекта objectGUID=6cc876e1-40ae-44b3-b4a8-a9044f7dd69a, nsuniqueID=None, тип объекта=user, sync_status=3
2025-06-25 11:26:41 syncer DEBUG     ipa_load_runner   Удаление объекта nsuniqueID=None
2025-06-25 11:26:41 syncer DEBUG     provider   Запрос для объекта в целевой LDAP используя метод user_del
2025-06-25 11:26:41 syncer ERROR     ipa_load_runner   Ошибка во время удаления {'code': 4001, 'message': 'user1: user not found', 'data': {'reason': 'user1: user not found'}, 'name': 'NotFound'}
2025-06-25 11:26:41 syncer INFO      ipa_load_runner   Сохранение объекта objectGUID=6cc876e1-40ae-44b3-b4a8-a9044f7dd69a, nsuniqueID=None с sync_status=0
2025-06-25 11:26:41 syncer INFO      ipa_load_runner   Удаление записи 1 в точки синхронизации

Ошибка `user not found` означает, что в ALD Pro уже нет объекта, который предполагается удалить. Это может произойти, если:

  • объект был удалён вручную или автоматически на предыдущих этапах;

  • объект изначально не был синхронизирован, но был добавлен в список на удаление из-за изменений в MS AD.

Решение: данная ошибка не требует вмешательства. При следующем запуске службы `syncer-loadrunner.service` состояние синхронизации будет скорректировано, и сообщение об ошибке исчезнет.

Ошибка отсутствия TLS-сертификата для подключения к MS AD

Если в процессе подключения к целевому контроллеру MS AD отсутствует необходимый файл TLS-сертификата, в журнале syncer_loadrunner.log появится следующая ошибка:

2025-06-27 03:19:06 syncer DEBUG     strategy   Подключение к хосту dc1.ald.company.lan успешно. Протокол API
2025-06-27 03:19:06 syncer DEBUG     provider   Подключение к целевой LDAP
2025-06-27 03:19:06 syncer DEBUG     strategy   Попытка подключения к dc1.ald.company.lan
2025-06-27 03:19:06 syncer ERROR     ipa_load_runner   Нет файла сертификата для подключения id=1
Traceback (most recent call last):
  ...
AttributeError: Нет файла сертификата для подключения id=1
2025-06-27 03:19:06 syncer DEBUG     provider   Отключение соединения от целевой LDAP
2025-06-27 03:19:06 syncer INFO      ipa_load_runner   loadrunner завершился

Причина: отсутствует файл публичного ключа для LDAPS-подключения к контроллеру MS AD.

Решение: Скопировать сертификат sert.pem в требуемое расположение:

cp sert.pem /run/syncer/provider/key1.pem

Где sert.pem — это публичный ключ для LDAPS-подключения.

Либо проверить директорию, в которую скопирован ключ. Убедиться, что путь указан верно, и повторно задать ключ в web-интерфейсе ALD Pro, если он не найден.

Подробнее о подготовке и настройке сертификатов (см. Выгрузка сертификатов для контроллера домена MS AD).

Отсутствие связи с контроллером MS AD

Если со стороны ALD Pro отсутствует сетевое соединение с контроллером MS AD, в журнале syncer_watcher.log зафиксируется ошибка следующего вида:

2025-06-30 14:43:52 syncer DEBUG     provider   Подключение к LDAP источник
2025-06-30 14:43:52 syncer DEBUG     strategy   Попытка подключения к windc1.corp.test
2025-06-30 14:43:55 syncer ERROR     strategy   {'desc': "Can't contact LDAP server", 'errno': 107, 'info': 'Transport endpoint is not connected'}
2025-06-30 14:43:58 syncer ERROR     strategy   {'desc': "Can't contact LDAP server", 'errno': 107, 'info': 'Transport endpoint is not connected'}
syncer ERROR     run   Не удалось подключиться к хосту=windc1.corp.test. Протокол LDAP

Решение: Проверить доступность порта 389 на контроллере MS AD

nc -vz windc1.corp.test 389

Если порт недоступен — устранить ограничения, связанные с настройками сетевых экранов, маршрутизацией и другими компонентами инфраструктуры.

Неверный пароль при доступе из web-интерфейса АLD Pro

В случае, когда web-интерфейсе ALD Pro неверно указано пароль пользователя, под которым происходит подключение к LDAP MS AD, в файле syncer_watcher.log будет ошибка:

2025-07-02 12:17:40 syncer DEBUG     provider   Подключение к LDAP источник
2025-07-02 12:17:40 syncer DEBUG     strategy   Попытка подключения к windc1.corp.test
2025-07-02 12:17:40 syncer ERROR     strategy   {'desc': 'Invalid credentials', 'info': '80090308: LdapErr: DSID-0C09042A, comment: AcceptSecurityContext error, data 52e, v3839'}
2025-07-02 12:17:40 syncer ERROR     strategy   {'desc': 'Invalid credentials', 'info': '80090308: LdapErr: DSID-0C09042A, comment: AcceptSecurityContext error, data 52e, v3839'}
syncer ERROR     run   Не удалось подключиться к хосту=windc1.corp.test. Протокол LDAP

Решение: Проверить правильность ввода пароля.

Проблемы с синхронизацией пароля новых пользователей MS AD

При первой попытке синхронизации пароля пользователя из Microsoft Active Directory в ALD Pro может возникать при условиях:

  • данный пользователь только что создан в MS AD;

  • пароль пользователя ни разу не изменялся в MSAD;

  • синхронизация завершилась с ошибкой.

При попытке синхронизации данных пользователя из MS AD в ALD Pro журнал работы модуля синхронизации syncer (файл syncer_standalone_error.log) содержит записи следующего вида:

2025-08-24 13:06:49 pwd-sync ERROR  utils  Возникло исключение во время выполнения <function ADldap.delete_attr ...>
2025-08-24 13:06:55 pwd-sync ERROR  processors  Ошибка NO_SUCH_ATTRIBUTE, текст ошибки {'desc': 'No such attribute', 'info': '00002076: AtrErr: DSID-030F194C, ... (userParameters)'}
Traceback (most recent call last):
  ...
ldap.NO_SUCH_ATTRIBUTE: {'desc': 'No such attribute', 'info': '00002076: AtrErr: DSID-030F194C, ... Att 9008a (userParameters)'}

Причина:

У новых пользователей MS AD, для которых пароль ещё ни разу не был изменён, отсутствует ряд служебных атрибутов (например, userParameters и whenChanged). При первой синхронизации из ALD PRO модуль syncer пытается работать с этими атрибутами, и каталог возвращает ошибку NO_SUCH_ATTRIBUTE. В результате синхронизация пароля не выполняется.

Решение:

Для всех новых пользователей, созданных в MS AD, необходимо однократно сменить пароль (достаточно через стандартные средства Windows или административные утилиты). После этого в каталоге будут установлены значения атрибутов (в том числе whenChanged), и последующая синхронизация паролей из ALD PRO в MS AD будет выполняться без ошибок.

Инструкция по выдаче ограниченных прав на управление паролями пользователей в домене MS AD

Для работы модуля синхронизации учетная запись домена MS AD, под которой устанавливаются отношения синхронизации, должна обладать правами на управление паролями пользователей, которые, по умолчанию, имеются у администраторов домена. В случае невозможности или нежелательности работы модуля синхронизации под учетной записью администратора домена допускается выдача ограниченных прав на учетную запись. Для этого:

  1. На контроллере домена MS AD необходимо запустить оснастку “Active Directory - пользователи и компьютеры”.

../../_images/limited_rights_1.png
  1. Выбрать OU корень домена и открыть “Делегирование управления”.

../../_images/limited_rights_2.png
  1. В открывшемся окне “Мастер делегирования управления”, после нажатия кнопки [Далее] необходимо указать учетную запись пользователя, которой выдаются права.

../../_images/limited_rights_3.png
../../_images/limited_rights_4.png
../../_images/limited_rights_5.png
../../_images/limited_rights_6.png
  1. Выбрать права для делегирования: Создание, удаление и управление учетными записями пользователей.

../../_images/limited_rights_7.png
  1. Нажать кнопку [Готово].

../../_images/limited_rights_8.png

Права выданы.

Примечание

В зависимости от версии домена MS AD набор делегируемых задач может отличаться.

Инструкция по обновлению ALD Pro до версии 2.4.0 и более поздних с ранее установленным модулем синхронизации

Общая информация

При обновлении контроллера домена ALD Pro до версии 2.4.0 и более поздних, с ранее установленным модулем синхронизации, процесс миграции базы данных может занять продолжительное время. Если база данных содержит 30000 пользователей и более, то рекомендуется сначала обновить ALD Pro, затем выбрав отдельный интервал профилактики обновить модуль синхронизации, согласно этой инструкции.

Проверка и подготовка состояния синхронизации

Перед началом обновления необходимо убедиться в отсутствии ошибок в работе модуля синхронизации. Если ошибки синхронизации присутствуют, их необходимо устранить до начала обновления, чтобы избежать проблем миграции и работы системы после обновления.

Проверить состояние служб синхронизации:

systemctl status syncer-loadrunner.timer
systemctl status syncer-watcher.timer

Проверить логи на наличие ошибок:

tail -n 100 /var/log/aldpro/syncer/syncer_loadrunner.log
tail -n 100 /var/log/aldpro/syncer/syncer_watcher.log

Также проверить журналы ошибок синхронизации паролей:

tail -n 100 /var/log/aldpro/syncer/pwd_sync/standalone_error.log

Если в логах обнаружены ошибки (например, CRITICAL или ERROR связанные с синхронизацией пользователей и групп), необходимо их устранить до начала обновления. В случае, если устранить ошибки самостоятельно невозможно — рекомендуется обратиться в техническую поддержку.

Предварительный этап

Делается резервная копия базы данных модуля синхронизации в отдельную директорию (выбрать в соответствии с инфраструктурой):

mkdir /srv/pg_backup && chown postgres:postgres /srv/pg_backup/
sudo -i -u postgres
$ pg_dump -d  syncer -F d -f /srv/pg_backup/syncer_$(date +%Y%m%d-%H%M)
$ du -sh /srv/pg_backup/syncer_20240913-0938/
520K        /srv/pg_backup/syncer_20240913-0938/

Проверить, что модуль синхронизации установлен, и запретить обновлять его пакеты (на примере ранее установленной версии ALD Pro 2.3.0):

apt list --installed | grep -E 'aldpro(.*)sync'
aldpro-mp-ui-syncer/1.7_x86-64,now 2.3.0-22 amd64 [установлен, автоматически]
aldpro-syncer/1.7_x86-64,now 2.3.0-31 amd64 [установлен]
apt-mark hold aldpro-syncer aldpro-mp-ui-syncer

Обновление ALD Pro до новой версии

Обновить source.list и пакеты на контроллере домена с установленным модулем обновления.

sudo apt dist-upgrade -y -o Dpkg::Options::=--force-confnew
sudo aldpro-server-install --update --domain <domain> --host <hostname> --ip <ip> --setup_syncer [--setup_gc]

Внимание

Параметр --setup_gc необходим только в случае ранее установленного модуля глобального каталога на данном контроллере домена.

Обновление модуля синхронизации

После основного этапа обновления ALD Pro и проверки работоспособности можно переходить к обновлению модуля синхронизации.

Снять удержание с пакетов:

sudo apt-mark unhold aldpro-syncer aldpro-mp-ui-syncer

Обновить пакеты и завершить обновление ALD Pro:

sudo apt dist-upgrade -y -o Dpkg::Options::=--force-confnew
sudo aldpro-server-install --update --domain <domain> --host <hostname> --ip <ip> --setup_syncer [--setup_gc]

После завершения обновления, необходимо перезагрузить контроллер домена.

sudo reboot

Обновление завершено.